package com.es.www.aopContext.service;

import org.springframework.aop.framework.AopContext;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * @Created by michangtao
 * @Date 2022/2/8 14:56
 * @Description
 */
@Component
public class UserService {

    @Autowired
    private UserService userService;

    public void update(String id, String name){
        /**
         *此处this是目标对象，并不是代理对象，这样调用get方法，是不会被切面拦截的；注入自己本身可以，是因为IOC容器中的是代理对象
         */
        System.out.println("修改指定id的name：" + name);
//        this.get(id);
//        userService.get(id);
        ((UserService)AopContext.currentProxy()).get(id);
    }

    public void get(String id){
        System.out.println("获取指定id：" + id + "的user>>>>>");
    }
}
